;Set a UCS to match a profile grid (Y is exagerated 10X).
;
;	AUTHOR: HENRY C. FRANCIS
;		425 N. ASHE ST.
;		SOUTHERN PINES, NC 28387
;		All rights reserved without prejudice.
;
(DEFUN C:PUCS ( / pt1 xofp yofp svnm newx xax newy yay orig xaxis yaxis)
  (setq pt1 (upoint 0 "" "Point on Profile Grid" nil nil))
  (setq xofp (ureal 0 "" "Grid Station of point (X of new UCS)" 0))
  (setq yofp (* 10(ureal 0 "" "Grid Elevation of point (Y/10 of new UCS)" 0)))
  (setq svnm (ustr 0 "Enter Name to Save UCS or return to continue" nil nil))
  (setq newx (-(car pt1)xofp))
  (setq xax (+(car pt1)xofp 12))
  (setq newy (-(cadr pt1)yofp))
  (setq yay (+(cadr pt1)yofp 12))
  (setq orig (list newx newy 0))
  (setq xaxis (list xax newy 0))
  (setq yaxis (list newx yay 0))
  (SETQ old_ucsfollow (GETVAR "ucsfollow"))
  (SETVAR "ucsfollow" 0)
  (command "ucs" "3" orig xaxis yaxis)
  (if svnm
    (command "ucs" "s" svnm)
  );if
  (SETVAR "ucsfollow" old_ucsfollow)
  (command)
);defun